Crate bitcoin_rbf

source ·

Enums

Constants

Traits

Functions

  • | Enforce BIP125 Rule #3 “The replacement | transaction pays an absolute fee of | at least the sum paid by the original | transactions.” Enforce BIP125 Rule | #4 “The replacement transaction must | also pay for its own bandwidth at or above | the rate set by the node’s minimum relay | fee setting.” | | ———– | @param[in] original_fees | | Total modified fees of original transaction(s). | ––––– | @param[in] replacement_fees | | Total modified fees of replacement | transaction(s). | ––––– | @param[in] replacement_vsize | | Total virtual size of replacement transaction(s). | ––––– | @param[in] relay_fee | | The node’s minimum feerate for transaction | relay. | ––––– | @param[in] txid | | Transaction ID, included in the error | message if violation occurs. | | ———– | @return | | error string if fees are insufficient, | otherwise std::nullopt. |
  • | Check whether the sequence numbers | on this transaction are signaling opt-in | to replace-by-fee, according to BIP | 125. Allow opt-out of transaction replacement | by setting nSequence > | | MAX_BIP125_RBF_SEQUENCE (SEQUENCE_FINAL-2) | on all inputs. | | SEQUENCE_FINAL-1 is picked to still | allow use of nLockTime by non-replaceable | transactions. All inputs rather than | just one is for the sake of multi-party | protocols, where we don’t want a single | party to be able to disable replacement | by opting out in their own input. |